package com.example.InetAddressDemos.udp;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

/**
 * @author Jason
 * @PACKAGE_NAME com.example.InetAddressDemos
 * @Description 发送数据
 * @date 2023-12-16 16:30
 */
public class SendMessageUdpDemo {
    public static void main(String[] args) throws IOException {
        //发送数据
        //1.创建DatagramSocket对象
        //绑定端口，以后通过这个端口往外发送数据
        //空参，所有端口中随即使用一个
        //有参。指定端口绑定
        DatagramSocket ds = new DatagramSocket();

        //2.打包数据
        //要发送的消息
        String msg = "你好啊";
        //转换为字节数组
        byte[] bytes = msg.getBytes();
        //目标主机
        InetAddress address = InetAddress.getByName("127.0.0.1");
        //目标端口号(0-65535)
        int port = 10086;
        //创建DatagramPacket对象，封装数据，数据长度（表示发送全部数据），目标主机，目标端口号。
        DatagramPacket dp = new DatagramPacket(bytes, bytes.length, address, port);
        //3.发送数据
        ds.send(dp);
        //4.关闭
        ds.close();
    }
}
